﻿namespace Cngot.Extensions.Logger
{
    public class LoggerOption
    {
        public string AppId { get; set; }

        public Dictionary<string, string> DefaultProperty { get; set; }

        public Func<IServiceProvider, string> MessageId { get; set; } = (sp) => Guid.NewGuid().ToString("N");

        /// <summary>
        /// 允许记录LineNumber等字段所在的程序集
        /// </summary>
        public List<string> AllowedAssemblies { get; set; }

        /// <summary>
        /// 脱敏值
        /// </summary>
        public string MaskValue { get; set; } = "[REDACTED]";

        /// <summary>
        /// 需脱敏字段
        /// </summary>
        public string SensitiveWords { get; set; } = "Password,NewPassword,Mobile,Telephone,Email,IdCard,RealName";
    }
}
